package com.newmainsoftech.aspectjutil.eventmanager.label;

import java.lang.annotation.ElementType;
import java.lang.annotation.Inherited;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * Based on {@link http://www.aspectprogrammer.org/blogs/adrian/2005/03/event_driven_ar.html}.
 * Just as marker on class (not interface) going to listen some event(s). 
 * Will be used with OnEvent annotation.
 * This will be inherited.
 * @author ay
 */
@Retention(RetentionPolicy.RUNTIME)
@Target( {ElementType.TYPE})
@Inherited
public @interface EventListener { // This type is just maker
	/**
	 * Order among listeners. Lower the value higher the precedence.
	 */
//	public int value() default 0;	
}
